Computers and networks have ushered in what has been called the “information age”. The ability to persist information in some type of data store a key enabler of this age. Even if power is lost to the data store, the data is persisted such that the next time the power is restored, the data remains preserved as it was. This is important as systems that provide power to the power store cannot be expected to operate indefinitely. For instance, disk storage on a laptop is provided to persist data since laptop users can be expected to (and really should on occasion) power down their laptop. Disk-based storage (originally rotating disk, but then solid state disks) have been in widespread use for some time. Reads from and writes to the disk-based storage is typically done via canonical disk Input/Output (I/O) commands.
Computing systems also include system memory, which is coupled to the processor(s) of the computing system over a memory bus. The processor reads data from (and writes data to) memory locations within the system memory over the memory bus. The processor also provides the address of the location being written to or read from over the memory bus. The processor might typically include one or more caches for faster reads and writes of data that is available in the cache.
Traditionally, such system memory has been volatile memory, in which data is lost when power is no longer supplied. More recently, however, persistent main memory has been developed, which is a persistent form of system memory. When power is lost, the information within the system memory remains intact. Nevertheless, because the caches remain volatile, the information within the caches is often lost.
After an uncontrolled power down of a computing system, the computing system undergoes a process called “recovery”. Recovery mechanisms can take some time. Some recovery mechanisms are optimized to try to shorten the time to begin the first task of normal operation after the uncontrolled power down. Other recovery mechanisms are optimized to shorten the time to optimum performance after the uncontrolled power down.
The subject matter claimed herein is not limited to embodiments that solve any disadvantages or that operate only in environments such as those described above. Rather, this background is only provided to illustrate one exemplary technology area where some embodiments described herein may be practiced.